﻿<%
/* *
 *功能：即时到帐接口接入页
 *版本：3.2
 *日期：2011-03-17
 *说明：
 *以下代码只是为了方便商户测试而提供的样例代码，商户可以根据自己网站的需要，按照技术文档编写,并非一定要使用该代码。
 *该代码仅供学习和研究支付宝接口使用，只是提供一个参考。

 *************************注意*****************
 *如果您在接口集成过程中遇到问题，可以按照下面的途径来解决
 *1、商户服务中心（https://b.alipay.com/support/helperApply.htm?action=consultationApply），提交申请集成协助，我们会有专业的技术工程师主动联系您协助解决
 *2、商户帮助中心（http://help.alipay.com/support/232511-16307/0-16307.htm?sh=Y&info_type=9）
 *3、支付宝论坛（http://club.alipay.com/read-htm-tid-8681712.html）
 *如果不想使用扩展功能请把扩展功能参数赋空值。
 **********************************************
 */
%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<%@ page import="com.jsalipay.services.*"%>
<%@ page import="com.jsalipay.util.*"%>
<%@ page import="com.jsalipay.config.*"%>
<%@ page import="com.lmpop.trade.ti_payment.*"%>

<%@ page import="java.util.Hashtable"%>
<%@ page import="java.util.Map"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
		<title>支付宝即时到帐接口</title>
	</head>
	<body>
	<%    
		
		//必填参数//

		//请与贵网站订单系统中的唯一订单号匹配
		  String out_trade_no = request.getParameter("out_trade_no");
		    //订单名称，显示在支付宝收银台里的“商品名称”里，显示在支付宝的交易管理的“商品名称”的列表里。
	        String subject ="";
	        if(request.getParameter("req_pay")==null)
	        	subject= request.getParameter("subject");
	        else
	        	subject= new String(request.getParameter("subject").getBytes("ISO-8859-1"),"UTF-8");
		//订单描述、订单详细、订单备注，显示在支付宝收银台里的“商品描述”里
			String only_kind =request.getParameter("only_kind");
			String body=request.getParameter("body");
			if(only_kind!=null&&!"".equals(only_kind))
			 	body=only_kind;
		//订单总金额，显示在支付宝收银台里的“应付总额”里
		String total_fee =request.getParameter("price");
		
		//扩展功能参数——默认支付方式//
		
		//默认支付方式，取值见“即时到帐接口”技术文档中的请求参数列表
		String paymethod = "bankPay";
		//默认网银代号，代号列表见“即时到帐接口”技术文档“附录”→“银行列表”
		String defaultbank = "ICBCB2C";
		
		//扩展功能参数——防钓鱼//

		//防钓鱼时间戳
		String anti_phishing_key  = "";
		//获取客户端的IP地址，建议：编写获取客户端IP地址的程序
		String exter_invoke_ip= "";
		
		//自定义参数，可存放任何内容（除=、&等特殊字符外），不会显示在页面上
		String extra_common_param = "";
		//默认买家支付宝账号
		String buyer_email = "";
		//商品展示地址，要用http:// 格式的完整路径，不允许加?id=123这类自定义参数
		String show_url = AlipayConfig.show_url;
		
		//扩展功能参数——分润(若要使用，请按照注释要求的格式赋值)//
		
		//提成类型，该值为固定值：10，不需要修改
		String royalty_type = "";
		//提成信息集
		String royalty_parameters ="";
		
		//////////////////////////////////////////////////////////////////////////////////
		String cust_id =request.getParameter("cust_id");
		if(request.getParameter("alipay_cust_id")!=null) cust_id =request.getParameter("alipay_cust_id");
		if(cust_id==null || "".equals(cust_id))	cust_id="100000000000000";
		if (request.getParameter("bpm_id")!=null && request.getParameter("bpm_id").equals("6667")) cust_id="100000000000000"; 
		Map params=new Hashtable();
		params.put("cust_id",cust_id);
		params.put("pay_code","alipay");
		//out.print("params="+params);
		Map alipayMap = new Ti_paymentInfo().getCustAlipayInfo(params);
		 
		String partner="",key="",seller_email="";
		if(alipayMap!=null){
			partner = alipayMap.get("pay_account").toString();
			key = alipayMap.get("passwd").toString();
			seller_email = alipayMap.get("pay_email").toString();
		}

		//把请求参数打包成数组
		Map<String, String> sParaTemp = new Hashtable<String, String>();
        sParaTemp.put("payment_type", "1");
        sParaTemp.put("out_trade_no", out_trade_no);
        sParaTemp.put("subject",subject);
        sParaTemp.put("body", body);
        sParaTemp.put("total_fee","0.01");
        sParaTemp.put("show_url", show_url);
        sParaTemp.put("paymethod", paymethod);
        sParaTemp.put("defaultbank", defaultbank);
        sParaTemp.put("anti_phishing_key", anti_phishing_key);
        sParaTemp.put("exter_invoke_ip", exter_invoke_ip);
        sParaTemp.put("extra_common_param", extra_common_param);
        sParaTemp.put("buyer_email", buyer_email);
        sParaTemp.put("royalty_type", royalty_type);
        sParaTemp.put("royalty_parameters", royalty_parameters);
		
		//构造函数，生成请求URL
		String sHtmlText = AlipayService.create_direct_pay_by_user(partner,seller_email,sParaTemp);
		
		
		out.println(sHtmlText);
	%>
	</body>
</html>
